import uwLoadJs from '@/utils/uwLoad';
const constant = {
  clmbase: '/ilmp-clmbase-app', // 基础服务
  loginUrl: uwLoadJs.getRootPath()+'/index',//登录地址
  queryUrl: uwLoadJs.getRootPath()+'/query/qry/compQuery',//综合查询地址
  indexUrl:uwLoadJs.getRootPath()+"/index", //工作台地址
  SUCCESS: '0',
  FAIL: '1',
  TOKEN: 'token',
  APP_CONTEXT_URL: 'ilmpAppContextUrl',
  // 是否
  isOrNot: [
    {
      value: '0',
      label: '是'
    },
    {
      value: '1',
      label: '否'
    }
  ],
  bottomStatus: [
    {
      value: '1',
      label: '是'
    },
    {
      value: '0',
      label: '否'
    }
  ],
  sex: [
    {
      value: 'M',
      label: '男'
    },
    {
      value: 'F',
      label: '女'
    },
    {
      value: 'U',
      label: '不明'
    }
  ],

  order: [
    {
      value: '1',
      label: '任务级别'
    },
    {
      value: '2',
      label: '任务类型'
    }
  ],

  systemApi: '/ilmp/system-app',           // 系统管理服务API
  taskApi: '/ilmp/task-app',               // 任务中心服务API
  nbApi: '/ilmp/nb-app',//核保作业API
  customerApi: '/ilmp/customer-app',//核保作业API
  insureApi: '/ilmp/insure-app',//投保书管理API
  imgoutApi:'/ilmp-imgout-app',//对外接口服务
  ausConfigApi:'/ilmp-aus-config-app',  //投保配置服务

  // 归属业务
  busiTypes: [
    {
      value: 'NB',
      label: '新契约'
    },
    {
      value: 'REAL',
      label: '续期'
    },
    {
      value: 'INAF',
      label: '承保后调查'
    },
    {
      value: 'POS',
      label: '保全'
    },
    {
      value: 'CLM',
      label: '理赔'
    },
    {
      value: 'YBNB',
      label: '银保通核对'
    },
    {
      value: 'ADVN',
      label: '预核保'
    },
    {
      value: 'ERROR',
      label: '异常任务'
    },
  ],

  // 归属模块
  taskModules: [
    {
      value: 'nb',
      label: '新单投保'
    },
    {
      value: 'tf',
      label: '退费'
    },
  ],

  // 是否发布
  isPublish: [
    {
      value: '1',
      label: '已发布'
    },
    {
      value: '0',
      label: '未发布'
    }
  ],
  // 时间单位
  unitOfTimes: [
    {
      value: 'D',
      label: '天'
    },
    {
      value: 'M',
      label: '分钟'
    }
  ],
  // 核保员等级
  operLevels: [
    {value: '1', label: '1级'},
    {value: '2', label: '2级'},
    {value: '3', label: '3级'},
    {value: '4', label: '4级'},
    {value: '5', label: '5级'},
    {value: '6', label: '6级'},
    {value: '7', label: '7级'},
    {value: '8', label: '8级'},
    {value: '9', label: '9级'},
  ],
  // 任务级别
  taskLevels: [
    {value: '1', label: '1'},
    {value: '2', label: '2'},
    {value: '3', label: '3'},
    {value: '4', label: '4'},
    {value: '5', label: '5'},
    {value: '6', label: '6'},
    {value: '7', label: '7'},
  ],
  // 是否饮酒
  isFewDrink: [
    {
      value: '1',
      label: '是'
    },
    {
      value: '0',
      label: '否'
    },
  ],
  // 是否酗酒
  isDrink: [
    {
      value: '1',
      label: '是'
    },
    {
      value: '0',
      label: '否'
    },
  ],
  healthType: [  // 1、既往史、2、传染病史、3、家族史、4、既往体检异常情况
    {
      value: '2',
      label: '既往史'
    },
    /* {
      value: '2',
      label: '传染病史'
    }, */
    {
      value: '4',
      label: '家族史'
    },
    /* {
      value: '4',
      label: '既往体检异常情况'
    }, */
  ],
  // 是否吸烟
  isSmoke: [
    {
      value: '1',
      label: '是'
    },
    {
      value: '0',
      label: '否'
    },
  ],
  // 任务状态
  taskStatus: [
    {
      id: '1',
      dictValue: '待AI核保'
    },
  ],
  // 时间格式化 [例：YYYY-mm-dd HH:MM:SS]
  dateFormat: function (fmt, date) {
    if (typeof date === 'number') {
      date = new Date(date);
    }
    if (!date instanceof Date) {
      return '-';
    }
    let ret;
    let opt = {
      "Y+": date.getFullYear().toString(),        // 年
      "m+": (date.getMonth() + 1).toString(),     // 月
      "d+": date.getDate().toString(),            // 日
      "H+": date.getHours().toString(),           // 时
      "M+": date.getMinutes().toString(),         // 分
      "S+": date.getSeconds().toString()          // 秒
      // 有其他格式化字符需求可以继续添加，必须转化成字符串
    };
    for (let k in opt) {
      ret = new RegExp("(" + k + ")").exec(fmt);
      if (ret) {
        fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0")));
      }
    }
    return fmt;
  },
  // 数字前面自动补零 [例：4,2 --> 04]
  prefixInt: function (num, length) {
    return (Array(length).join(0) + num).slice(-length);
  },
  isArray(arr) {
    return Object.prototype.toString.call(arr) === '[object Array]';
  },
  // 深度克隆
  deepClone(obj) {
    if (typeof obj !== "object" && typeof obj !== 'function') {
      return obj; //原始类型直接返回
    }
    var o = this.isArray(obj) ? [] : {};
    for (var i in obj) {
      if (obj.hasOwnProperty(i)) {
        o[i] = typeof obj[i] === "object" ? this.deepClone(obj[i]) : obj[i];
      }
    }
    return o;
  },

}

// 通用数据
export default constant;
